package com.smart.community.property.service;

import java.util.List;

import com.baomidou.mybatisplus.extension.service.IService;
import com.smart.community.property.dto.ReminderRecordDTO;
import com.smart.community.property.entity.ReminderRecord;
import com.smart.community.property.vo.ReminderRecordVO;

/**
 * 嵌套催缴/沟通记录服务接口
 * 严格遵循《智慧社区微服务架构总览.md》《系统状态枚举权威标准声明.md》
 */
public interface IReminderRecordService extends IService<ReminderRecord> {
    /** 
     * 新增催缴/沟通记录 
     * @param dto 催缴记录DTO
     * @return 记录ID
     */
    Long addReminder(ReminderRecordDTO dto);

    /** 
     * 嵌套表历史查询 
     * @param feeId 费用ID
     * @param feeType 费用类型
     * @return 催缴记录列表
     */
    List<ReminderRecordVO> listReminders(Long feeId, Integer feeType);

    /** 
     * 修改催缴/沟通记录 
     * @param id 记录ID
     * @param dto 催缴记录DTO
     */
    void updateReminder(Long id, ReminderRecordDTO dto);

    /** 
     * 同步沟通后到期日/金额到主费用表 
     * @param dto 催缴记录DTO
     */
    void syncFee(ReminderRecordDTO dto);
} 